package com.ms.demo;

/**
 * @description: 观察者模式使用三个类 Subject、Observer 和 Client。
 *      Subject 对象带有绑定观察者到 Client 对象和从 Client 对象解绑观察者的方法。我们创建 Subject 类、Observer 抽象类和扩展了抽象类 Observer 的实体类。
 * @author: ms
 * @create: 2022-10-27 16:15
 */
public class TestMain {

    public static void main(String[] args) {

        Subject subject = new Subject();

        new HexaObserver(subject);
        new OctalObserver(subject);
        new BinaryObserver(subject);

        System.out.println("原始数据（改变前）: 15");
        subject.setState(15);

        System.out.println("------------------------------");

        System.out.println("原始数据（改变前）: 10");
        subject.setState(10);
    }
}